home *** CD-ROM | disk | FTP | other *** search
/ Mac Magazin/MacEasy 33 / Mac Magazin and MacEasy Magazine CD - Issue 33.iso / Utilities / BrainHex 1.1 / BrainHex.notes < prev    next >
Text File  |  1997-04-30  |  13KB  |  126 lines

  1.  
  2.  
  3.  
  4.                                                  BrainHex
  5.  
  6.                                                                                         Hexadecimal File Editor for MacOS™
  7.                                                                                                                 Version 1.1
  8.  
  9.                                                              April 30, 1997
  10.                                                             Revision History
  11.                                                    Written by Brian "Brain" Fries
  12.                                           Copyright ©1994-1997 BrainScan Software
  13.                                                            All Rights Reserved
  14.                                                        Shareware $25 ($19 hex)
  15.                                                     E-mail: brainscn@psyber.com
  16.                                                  http://www.psyber.com/~brainscn
  17.  
  18.  
  19. BrainHex Revision History
  20. ◊ Version 1.1 - April 1997
  21.   Enhancements:
  22. All New Finder Info Window -- The old modal Finder Info dialog is gone and has been replaced by a window that operates on a par with the fork windows. You can open multiple Info windows (even to the same file), the window has a dashboard, you can lock and unlock Info windows like you do Fork windows, the common menu commands (open, close, save, revert, unlock, etc.) are used for file operations, there is now a colorized pop-up menu for changing labels, you can edit Finder Info for new files that have not yet been saved, Info windows show up in the Windows menu, a menu item has been added to the File menu for "Set Like…", Info Windows can be opened from the Open dialog and via AppleScript, dates and IDs can be viewed as decimal or hex values by clicking on them, and more, I'm sure.
  23.  
  24. Side by Side Fork Comparisons -- BrainHex now supports automated comparison of the data in two open fork windows. The new commands "Next Difference" (command-equal) and "Previous Difference" (command-shift-equal) cause BrainHex to search forward or backward from the current cursor positions in the Front and Target fork windows until a non-matching character is found. Then, BrainHex will continue the search until the next matching character is found, and will select all the characters that do not match in both forks. The front window is the foremost window displayed and must be a fork window. The target window is the next fork window behind the front window (info windows are ignored). A unique beep sound is heard when the remainder of the forks match.
  25.  
  26. Scrolling keys -- The Page Up and Page Down keys now scroll the front window a page at a time as though the user clicked in the grey space above or below the thumb in the scroll bar. Holding the Command key while pressing the up and down arrows causes the front window to be scrolled a line at a time as though the user clicked on the up and down arrows in the scrollbar.
  27.  
  28. Control-key cursor movements -- Holding the Control key while using the arrows and other cursor movement and scrolling keys causes the same action to take place in both the Front and Target fork windows. This is very useful in conjunction with fork comparisons, allowing you to move the cursor or scroll the data in both windows without simultaneously without having to switch windows back and forth.
  29.  
  30. Date/Time mode in Edit Selection dialog -- The Edit Selection dialog now includes a date and time mode, displaying the selected value (if it is 4 bytes) as a date/time value, and allowing editing of the date/time string.
  31.  
  32. Internal reorganization allows all windows opened for a single file to be managed together. When multiple windows to the data fork, resource fork or Finder Info for a single file are opened, their windows are numbered to give them unique names.
  33.  
  34. BrainHex now recognizes when an open file has been renamed external to BrainHex (in the Finder or other program), and updates window titles to reflect the change.
  35.  
  36. Command-clicking on the title bar of a BrainHex window now provides a pop-up path menu similar to that in Finder windows. Selecting a folder or disk from this menu will open that item in the Finder and bring it to the foreground.
  37.  
  38. Close All and Close All For This File alternatives to the Close command and its equivalents (command key or clicking the close box of a window) are now active when holding the Option and Shift keys, respectively. Close All will close all open fork and info windows. Close All For This File will close all windows opened for the file referenced by the frontmost window, leaving windows for other files open. Both of these commands will prompt for saving where appropriate.
  39.  
  40. Radio buttons in the preferences dialog have been changed to check boxes, allowing for multiple windows to be opened automatically when opening a file.
  41.  
  42. Improved  Open… dialog interface -- custom items have been changed from radio buttons to check boxes allowing for multiple windows to be opened, and an Open Alias button replaces the old Alias File radio button. Open Alias is enabled when the currently selected file is an alias, and using this button will cause the alias itself to be opened rather than opening the file or folder it references.
  43.  
  44. Improved New File… command replaces the old New Data Fork and New Resource Fork commands. The New File… command now prompts for which windows to open, allowing the data fork, resource fork and info windows to be opened.
  45.  
  46. Improved Save As… command. If multiple windows are opened for a given file, Save As will prompt for whether to transfer only the front window to the new document, or to transfer all windows open for the file to the new document.
  47.  
  48. Support alternative fonts in ASCII area -- There is now an "ASCII Font ->" sub-menu in the Tools menu that allows you to select a font to display the text in in the ASCII box of a Fork window. The sub-menu sorts the fonts into fixed- and variable-width fonts. BrainHex displays even variable-width fonts in a fixed-width fashion to fit within the structure of the display. Keep in mind that some fonts will look exceedingly bad in this display. The default font is "Hexus," which is embedded in the BrainHex application.
  49.  
  50. Show Data Fork, Show Resource Fork and Show Finder Info commands in Windows menu -- These new items replace the old Open "Other" Fork and Edit Finder Info commands. Along with these new menu items, some command key equivalents have been changed:
  51.         Command Key     Old Function         New Function
  52.             D           <unused>             Show Data Fork
  53.             H           Show High ASCII      Replace
  54.             I           Edit Finder Info…    Show Finder Info
  55.             R           Replace              Show Resource Fork
  56.  
  57. Holding the Option key while clicking a Fork or Info dashboard button, or while selecting a "Show XXX" menu item, causes the front window to be closed when the other window is successfully brought to the front.
  58.  
  59. Context Sensitive "Other" Fork Buttons -- The dashboard button for opening the other fork of a file now indicates whether the other fork is data or resource.
  60.  
  61. If the user tries to edit something while the window is locked, the Lock button is blinked as an indicator for why editing can't take place.
  62.  
  63. Repeated typing of invalid characters in the Hex box (e.g. the user thinks the focus is on the ASCII box) causes BrainHex to put up a dialog indicating the valid hex characters.
  64.  
  65. Extraneous doodads like sounds and pictures have been reduced in size to shrink the overall download size.
  66.  
  67. Export and Print output now include timestamps and can be canceled with command-period.
  68.  
  69. Greatly reduced CPU usage when running in background or with no windows open.
  70.  
  71. You may not think of this as an enhancement, but I do -- BrainHex is now a bit more in-your-face when it has not been registered. The About box now sports a "Not Yet" button with a time delay alongside the Register button, and one of these must be pressed to clear the dialog. Once BrainHex is registered, these buttons go away and any user action will clear the About box.
  72.  
  73.   Bug Fixes:
  74. Miscellaneous cursor display problems (e.g. if cursor is past EOF after locking a fork and discarding changes, it doesn't show up)
  75.  
  76. Trying to unlock a file that has its "Locked" flag set resulted in an error dialog and the window being closed. Now, you get a more informative dialog and the window stays open in its locked state.
  77.  
  78. Trying to unlock a file that is already unlocked in a different BrainHex window resulted in an error dialog an other problems. This situation is handled properly now.
  79.  
  80. New window position now calculated more reliably.
  81.  
  82. Undo of typing in ASCII box left old data offset by one character position. This has been fixed.
  83.  
  84. Deleting characters from the end of a fork causing an automatic scroll down of the displayed data did not redraw the data in the Hex and ASCII boxes properly. It does now.
  85.  
  86. Clipboard commands now work properly in registration dialogs.
  87.  
  88. Fixed a couple printing problems - on some printers the page number was getting cut off, and added the version number to the registration form when printed out. Added "Copy Form" button to registration dialog.
  89.  
  90. BrainHex's internal font, "Hexus", is now in a separate file. Put it in your Fonts folder to use it. This fixes problems when printing to some Laser printers.
  91.  
  92. Fixed a redraw problem when making a window larger.
  93.  
  94.  
  95. ◊ Version 1.0 - Developed between August 1994 and January 1996
  96.   Why? Because long ago I used to use a program called FEdit to poke around in applications and documents, but that program ceased to work somewhere along the line, as I upgraded from a Mac IIci running System 6 to a Quadra 700 running System 7 to a PowerMac 8500 running System 7.5.  I don't know whether FEdit was ever upgraded to support the newer stuff, but I got by without it. Well, I started analyzing a potential new project at work, and found myself with a need to reverse engineer the document structure of a couple applications, and I thought a Hex editor would be quite useful. I poked around Internet FTP sites without finding anything to suit my needs, so I decided to utilize my voluminous free time to write my own Hex editor. A couple of weeks after I started, a friend found the fine program HexEdit, by Jim Bumgardner, on an online service and forwarded a copy to me, including source code. While this tool would suit my needs, I already had a working prototype of BrainHex, and I had a few ideas I wanted to try out in terms of interface and nifty little tools. Plus I wanted to get a publicly released product under my belt before moving on to more adventurous tasks.
  97.  
  98.  
  99. Coming Attractions...maybe?
  100. The following features may show in future releases of BrainHex, or may never actually be implemented at all. Anyway, here are some of my ideas. I'm accepting votes for your favorite unimplemented feature (write-in candidates are allowed) to help me adjust my priority schedule.
  101.  
  102. ◊ Editable File Templates. Allow structured display of files based upon editable template modules.
  103.  
  104. ◊ Drag and Drop. All applications should support inter- and intra-application drag-and-drop where appropriate. Its a cool feature. BrainHex still doesn't support it. I'm embarrassed.
  105.  
  106. ◊ Hexadecimal Cut-and-Paste. Hold the option key down, and the clipboard could allow copying the selected data in its hex representation.
  107.  
  108. ◊ Double-Click Drag. After double-clicking, if button is still down, user should be able to drag out the selection, and it should shrink or grow in whole-word increments.
  109.  
  110. ◊ ASCII-Only display. It would sometimes be helpful to hide the Hex portion of the fork window and display only the ASCII portion, which could be enlarged to show more data per line.
  111.  
  112. ◊ Multiple File Search. It would be way cool if BrainHex supported scanning multiple files, from a selected list or down a directory tree, for search strings.
  113.  
  114. ◊ Patcher Applet Creation. Once file comparison is supported, it would be pretty simple to also provide a patcher application creation feature, like ResCompare does.
  115.  
  116. ◊ Disk-based Editing. Currently BrainHex needs to load an entire file into memory for editing. It would be nice if BrainHex could work with very large files without requiring them to be read entirely into memory.
  117.  
  118. ◊ Resource Fork Intellegence. BrainHex could be made smart about the structure of a resource fork, displaying the current resource being edited and maintaining resource fork integrity so that pointers and lengths could be updated properly when data is inserted or deleted. This would allow resource fork editing with improved likelyhood of having a valid resource fork when done.
  119.  
  120. ◊ AppleScriptability. BrainHex could provide a very verbose and useful Apple Event suite, including the full text editing suite plus some events specific to BrainHex. This would create a powerful environment for batch manipulation (and decimation!) of files.
  121.  
  122. ◊ We've received requests for Windows versions of BrainHex, but I'm not pursuing that at this time. I am, however, interested in the market for BrainHex on Rhapsody, BeOS or Java... Anything else come to mind?
  123.  
  124.  
  125.                                                                    BrainScan Software™
  126.                                        Where Left Brain meets Right